[enumification] support "non-constant-to-constant" transition in enums too. #1080
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
At 9a73c4c we became much more precise about enumification, because
formerly we only pull int constant information through DroidDoc only in
the latest API.
Besides, we had been precise on which int fields are final and which aren't,
in API XML metadata.
Since we switched the information source to API XML metadata, such final
fields that were NOT final are strictly converted to enums only in the
constant-ified API Level.
That was regarded as regression at #1078 .
The solution to this situation is: treat them as constants.
To do so, now generate-const-list-2.cs is changed to NOT check if an int
field is final or not, until at the merge phase. Then we filter out those
non-constant fields (which are not much).
This uncovers those "formerly non constant" fields too. Fortunately such
fields didn't exist other than the ones at PR #1078 mentioned (this
generate-const-list-2.exe now prints out such fields now.)